1. Field of the Invention
The present invention relates to a data transmission apparatus for controlling contention between data transmissions when a plurality of types of applications for transmitting data at arbitrary times exist and they transmit the data while sharing the use of a network.
2. Description of the Related Art
A plurality of applications generally operates on the same network. FIG. 1 is a diagram for describing the use condition of such applications. In the same drawing, a plurality of data transmission apparatuses 101 are electrically connected to a transmitting medium 100. Applications such as print, electronic mails, file transfer, telnets, etc. make use of the transmitting medium 100 through the data transmission apparatuses 101. Of these applications, applications incapable of predicting the condition of its own data transmission also exist as in the case of, for example, a telnet and an electronic mail in which human interaction serves as a source for the transmission of data. Thus, in such a network, a plurality of terminals start to transmit data at arbitrary times and there is a probability of occurrence of the contention between data transmissions.
The contention between the data transmissions will first be explained with reference to FIG. 2. Each terminal transmits data through a transmitting medium constituting a network. A transmission rate indicative of the capability of transmission of data is expressed in the form of the amount of transmitted data per unit time. The transmission bandwidth of the transmitting medium has its limitations and the maximum transmission bandwidth (hereinafter called "Rmax (bit/sec)") thereof is a fixed finite value.
The transmission rate (hereinafter called "r(t)") at which the bandwidth is used for the transmission of data by each application, shares the use of a network by using Rmax in divided form. r(t) changes every moment. When the sum of r(t): .SIGMA.r(t) is greater than Rmax of the transmitting medium, a struggle for the common bandwidth occurs between respective data transmissions. This will be referred to as "contention".
Data, which needs a bandwidth exceeding Rmax, will be lost without transmission. In order to avoid the loss of the data, control for avoiding the contention, i.e., contention control is performed.
The conventional contention control will next be described. In general, each of transmitting stations puts predetermined amounts of data together into a transmission unit and transmits the data for each transmission unit. A packet or cell or the like is known as the transmission unit. When respective data transmissions contend with each other at a transmitting medium upon execution of the respective data transmissions, the occurrence of its contention is notified tothetransmitting stations forperformingthe individualdata transmissions. Each of such transmitting stations extends a transmission interval of the continuous transmission unit so as to reduce r(t). As a result, .SIGMA.r(t) becomes smaller than Rmax, so that the loss of the data can be avoided. As typical techniques for contention control, there ares known a CSMA/CD (Carrier Sense Multiple Access/Collision Detection) system of Ethernet (Trademark of Xerox Corporation), a system using a RM cell (Resource Management Cell) employed in ABR (Available Bit Rate) service of an ATM (Asynchronous Transfer Mode), etc.
Features of the prior art will next be explained. In the conventional contention control technique, Rmax is available without any waste because the bandwidth is dynamically distributed to a transmission actually using the bandwidth. On the one hand, however, a bandwidth available for transmission at a given time t is-expressed as R(t)=.vertline.Rmax -.SIGMA.r(t).vertline.. On the other hand, it is necessary to control a bandwidth r (t) used for transmission and control .vertline.R(t)-r(t).vertline. so as to approach zero. At this time, there may be a case in which r(t) is controlled excessively and deficiently as shown in FIG. 3.
Where R(t)-r(t)&gt;0 (excessively large in controlled variable) PA1 Where R(t)-r(t)&lt;0 (excessively small in controlled variable):
The contention occurs for the transmission bandwidth. In general, the excess of the controlled variable is absorbed by buffering data before and after the use of a transmitting medium and averaging used bandwidths on a time basis. However, when the amount of data producedndue to the excess of the controlled variable is greater than the amount of buffering, the data will be lost. Even when a buffer length is sufficiently long, a delay in the data transmission due to the buffering increases.
A bandwidth unused for transmission occurs and hence the utilization efficiency of the bandwidth is reduced.
The reason why r(t) is controlled excessively or deficiently, will next be described.
A distance L exists between a point where r(t)-r(t) is observed and a point where r(t) is controlled in accordance with notification of observations results. Upon the propagation of the notification between the two, a delay of .DELTA.t=(light velocity c.times.distance L) exists even at the minimum. Namely, r(t) is always controlled in accordance with R(t)-r(t) preceding .DELTA.t. Thus, since .DELTA.t.noteq.0 even if the accurate observation or notification is made, it is impossible to perform control for satisfying .vertline.R(t)-r(t).vertline.=0.
In the conventional contention control technique as described above, the longer the distance of a transmission path is, the wider a control error of .vertline.R(t)-r(t).vertline. becomes. As the transmission rate .SIGMA.r(t) approaches Rmax of the transmission bandwidth, no margin of absorption of the control error of .vertline.R(t)-r(t).vertline. is given, so that a data loss and a data transmission delay increase due to the occurrence of contention.
Meanwhile, the bandwidth and the amount of data to be transmitted, which are necessary for the establishment of an application, differ according to the type of application. For example, a telnet needs a bandwidth for transmitting a few hundred Bytes in several seconds, an electronic mail needs a bandwidth for transmitting a few KBytes in a few minutes, and print needs a bandwidth for transmitting a few hundred KBytes in a few seconds. Thus, since the data transmitted from each application is several hundred Bytes or more and is sufficiently larger than the transmission unit, it is divided into plural transmission units, which are continuously transmitted. Since an apparatus for actually transmitting data or a transmission protocol permits the transmission of data of any applications, there has normally been a demand for the transmission of data as high in speed as possible according to applications requiring broad bandwidths. Therefore, the transmission interval for each transmission unit tends to be narrowed unlimitedly and r(t) comes to reach Rmax.
In the conventional contention control technique, a problem occurs such that if plural terminals starts to transmit data at the rates reaching Rmax, the data loss and the delay in the data transmission increase as described above.
With the notification of the contention, the r(t) decreasing operation is evenly effected on all the transmitting stations without regard to the type of application. Thus, once dathe contention occurs, the problem of a great reduction in quality arises in the applications requiring large transmission bandwidth, such as a printing application.